# (Possible) Frequently Asked Questions


## General
### What is Zombie Navigator?

### What is this extension for?

### How is it different from SlimerJS/PhantomJS?
This is an addon (extension) for Firefox and not a standalone application.

### How is it different from Selenium?
You need just Firefox to use Zombie Navigator. No Python, no NodeJS, no Java, no special web server, etc. And Zombie Navigator always support the latest and ESR versions of Firefox.

### Why no translation is available?
It's not a priority. And localization is not worth the bloated file size and code complexity in this mainly noninteractive addon.

### Where do donations on addons.mozilla.org go?
In fact, donations go directly to the Free Software Foundation, Inc., a Boston-based US 501(3) organization to support software freedom.

### Why not on Github?
We prefer free-software-based solutions. Don't you?


## Usage
### I'm at a loss how to run a Zombie script

**Easiest (new in version 0.5):**
`about:addons` > Extensions > **Zombie Navigator** > **Run a Zombie script now** (file selection)
From the preferences you can also disable the interpretation of an environment variable.

### Command line
In a bash-like shell (in Unix-like OS or Cygwin):

        $ ZOMBIE_NAVIGATOR_SCRIPT_PATH='/absolute/path/to/zombie-script.js' /path/to/firefox-executable

/path/to/firefox-executable is `/usr/bin/firefox` for many GNU/Linux distro-pakaaged versions and
in OSX (not tested): `/Applications/Firefox.app/Contents/MacOS/firefox`

#### Windows (not supported or recommended)
According to download statistics for the previous version at AMO, this addon seems to be usable for Windows users, fortunately.
Please make sure to set ZOMBIE_NAVIGATOR_SCRIPT_PATH for 'Firefox' with the absolute path to the script in a format the Addon API understands (in registry or from command line?).

- This may help: https://www.reddit.com/r/firefox/comments/3e2brv/how_to_set_environment_variables_for_firefox/
- or this: https://superuser.com/questions/284342/what-are-path-and-other-environment-variables-and-how-can-i-set-or-use-them


### How to give a script an extra input?
Zombie scripts cannot access local files or pipes. It is an intentional design choice. 
However you can do the following steps instead:
- Set up an appropriate HTTP server
- Listen for API calls from your scripts
- Your scripts send a request to the API (possibly authenticated)
- You should use HTTPS if the server is not local
- The server responds with some data needed for the scripts
- This can be used for any I/O tasks


## Security
### Is this extension safe?
It's designed to be safe. Also you can jail Firefox with containers if you like.
Never run Firefox with the `root` account.

### Aren't some codes minified?
Yes and no. We do minify non-script parts of the release package. Build scripts also remove some unimportant comments and extra spaces from the included scripts. But in any doubt, please look into the source code. **Both the full source code and build optimization scripts are available in the Git repository.** If you look for a specific version, please check out the appropriate Git tag, and that's all.

Convenient prettified builds are available in the `releases-prettified` subdirectory in the [Reference Builds](https://notabug.org/desktopd/zombie-navigator-reference-builds) Git repository.

### Found a issue?
Please report a bug to: <https://notabug.org/desktopd/zombie-navigator/issues>


